from pathlib import Path
import pandas

from typing import Any, Optional, List, Dict, Tuple, Set, Union

current_path: Any

def load_soil_classification() -> pd.DataFrame:
    """
    Load all kinds of soil classification.
    
    :returns
    material_name: 岩土名称
    material_type: 岩土类型
    for_footing_bc: 基于标贯击数确定地基承载力标准值的岩土分类
    for_skin_bc: 基于多种试验指标确定桩基侧摩阻力标准值的岩土分类
    for_base_bc: 基于多种试验指标确定桩端阻力标准值的岩土分类
    for_nail_bc: 基于多种试验指标确定土钉极限粘结强度标准值的岩土分类
    """
    ...
def load_soil_bc_on_N_prime() -> pd.DataFrame:
    """
    Load soil bearing capacity according to the number of modified CPT number N'.
    
    columns: [中砂和粗砂击数, 中砂和粗砂fak, 粉砂和细砂击数, 粉砂和细砂fak, 粉土击数, 粉土fak, 黏性土击数, 黏性土fak]
    
    Note:
    ----
    nan value should be deleted before using each Series from the DataFrame.
    """
    ...
def load_soil_bc_factors() -> pd.DataFrame:
    """
    Load soil bearing capacity factors based on soil shear strength - c and phi.
    
    columns: [internal_friction_angle, Mb, Md, Mc]
    """
    ...
def load_pile_skin_capacity() -> pd.DataFrame:
    """
    Load pile skin capacity qsik based on several kinds of test results.
    
    columns: [material_name,liquid_index_min,liquid_index_max,water_content_ratio_min,water_content_ratio_max,
    void_ratio_min,void_ratio_max,spt_number_min,spt_number_max,dpt_number_min,dpt_number_max,concrete_min,
    concrete_max,mud_min,mud_max,dry_min,dry_max]
    """
    ...
def load_pile_base_capacity() -> pd.DataFrame:
    """
    Load pile base capacity qpk based on several kinds of test results.
    
    columns: [material_name,liquid_index_min,liquid_index_max,void_ratio_min,void_ratio_max,spt_number_min,
    spt_number_max,dpt_number_min,dpt_number_max,concrete_1_min,concrete_1_max,concrete_2_min,concrete_2_max,
    concrete_3_min,concrete_3_max,concrete_4_min,concrete_4_max,mud_1_min,mud_1_max,mud_2_min,mud_2_max,mud_3_min,
    mud_3_max,mud_4_min,mud_4_max,dry_1_min,dry_1_max,dry_2_min,dry_2_max,dry_3_min,dry_3_max]
    """
    ...
def load_soil_nail_cohesion() -> pd.DataFrame:
    """
    Load soil nail limit cohesion qsk based on several kinds of test results.
    
    columns: [material_name,liquid_index_min,liquid_index_max,spt_number_min,spt_number_max,dpt_number_min,
    grout_min,grout_max,steel_min,steel_max]
    """
    ...
def load_corrosion_by_env_type() -> pd.DataFrame:
    """
    Load the water and soil corrosion standards by environment type.
    
    columns: [腐蚀等级, 腐蚀介质, I, II, III]
    """
    ...
